package com.asset.dispoal.business.bsEvidenceRecognition.api;

import com.asset.dispoal.business.bsEvidenceRecognition.dto.ContractEvidenceRequest;
import com.asset.dispoal.business.bsEvidenceRecognition.dto.ContractEvidenceResponse;
import com.asset.dispoal.business.bsEvidenceRecognition.dto.DeleteContractEvidenceRequest;
import com.asset.dispoal.business.bsEvidenceRecognition.dto.EvidenceDeleteRequest;
import com.asset.dispoal.business.bsEvidenceRecognition.dto.EvidenceListRequest;
import com.asset.dispoal.business.bsEvidenceRecognition.dto.EvidenceListResponse;
import com.asset.dispoal.business.bsEvidenceRecognition.dto.EvidenceMatchHistoryFileRequest;
import com.asset.dispoal.business.bsEvidenceRecognition.dto.EvidenceMatchHistoryFileResponse;
import com.asset.dispoal.business.bsEvidenceRecognition.dto.EvidenceMatchHistoryRequest;
import com.asset.dispoal.business.bsEvidenceRecognition.dto.EvidenceMatchHistoryResponse;
import com.asset.dispoal.business.bsEvidenceRecognition.dto.EvidenceMatchRequest;
import com.asset.dispoal.business.bsEvidenceRecognition.dto.IdCardRefreshHistoryCaseRequest;
import com.asset.dispoal.business.bsEvidenceRecognition.dto.IdCardRefreshHistoryCaseResponse;
import com.asset.dispoal.business.bsEvidenceRecognition.dto.IdCardRefreshHistoryResponse;
import com.asset.dispoal.business.match.dto.MatchRequest;
import com.asset.dispoal.business.match.dto.RefreshCaseStateRequest;
import tech.mhuang.pacebox.springboot.protocol.Result;
import tech.mhuang.pacebox.springboot.protocol.data.PageVO;

import java.util.List;
import java.util.Map;


/**
 * @author qr
 * @date 2022/5/10$
 */
public interface BusinessDataManageService {

    Result evidenceIdentification(EvidenceMatchRequest request);

    Result evidenceMatchResult(MatchRequest matchRequest);

    Result<PageVO<EvidenceListResponse>> queryEvidenceList(EvidenceListRequest request);

    Result deleteEvidence(EvidenceDeleteRequest request);

    Result<PageVO<EvidenceMatchHistoryResponse>> queryMatchHistory(EvidenceMatchHistoryRequest request);

    Result<PageVO<EvidenceMatchHistoryFileResponse>> queryMatchHistoryFile(EvidenceMatchHistoryFileRequest request);

    Result<List<ContractEvidenceResponse>> queryContractEvidenceById(ContractEvidenceRequest contractId);

    Result deleteSingleDataByContractId(DeleteContractEvidenceRequest request);

    Result refreshCaseState(RefreshCaseStateRequest request);

    Result mergeCallBack(MatchRequest matchRequest);

    Result idCardCallBack(MatchRequest request);

    Result<PageVO<IdCardRefreshHistoryResponse>> queryIdCardRefreshPage(EvidenceMatchHistoryRequest request);

    Result<PageVO<IdCardRefreshHistoryCaseResponse>> queryIdCardRefreshCasePage(IdCardRefreshHistoryCaseRequest request);

    Result evidenceCaseMatchResult(MatchRequest request);

    Result addressCallBack(MatchRequest request);

    Result evidenceMatchResult2(Map map);

    Result evidenceMatchResult3(Map map);
}
